﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x0200025F RID: 607
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class ChessRogueModifierInfo : IMessage<ChessRogueModifierInfo>, IMessage, IEquatable<ChessRogueModifierInfo>, IDeepCloneable<ChessRogueModifierInfo>, IBufferMessage
	{
		// Token: 0x17000808 RID: 2056
		// (get) Token: 0x06001B6C RID: 7020 RVA: 0x0004F17D File Offset: 0x0004D37D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<ChessRogueModifierInfo> Parser
		{
			get
			{
				return ChessRogueModifierInfo._parser;
			}
		}

		// Token: 0x17000809 RID: 2057
		// (get) Token: 0x06001B6D RID: 7021 RVA: 0x0004F184 File Offset: 0x0004D384
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return ChessRogueModifierInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x1700080A RID: 2058
		// (get) Token: 0x06001B6E RID: 7022 RVA: 0x0004F196 File Offset: 0x0004D396
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return ChessRogueModifierInfo.Descriptor;
			}
		}

		// Token: 0x06001B6F RID: 7023 RVA: 0x0004F19D File Offset: 0x0004D39D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ChessRogueModifierInfo()
		{
		}

		// Token: 0x06001B70 RID: 7024 RVA: 0x0004F1B0 File Offset: 0x0004D3B0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ChessRogueModifierInfo(ChessRogueModifierInfo other) : this()
		{
			this.confirm_ = other.confirm_;
			this.modifierEffectCellIdList_ = other.modifierEffectCellIdList_.Clone();
			this.selectCellId_ = other.selectCellId_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x06001B71 RID: 7025 RVA: 0x0004F1FD File Offset: 0x0004D3FD
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ChessRogueModifierInfo Clone()
		{
			return new ChessRogueModifierInfo(this);
		}

		// Token: 0x1700080B RID: 2059
		// (get) Token: 0x06001B72 RID: 7026 RVA: 0x0004F205 File Offset: 0x0004D405
		// (set) Token: 0x06001B73 RID: 7027 RVA: 0x0004F20D File Offset: 0x0004D40D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Confirm
		{
			get
			{
				return this.confirm_;
			}
			set
			{
				this.confirm_ = value;
			}
		}

		// Token: 0x1700080C RID: 2060
		// (get) Token: 0x06001B74 RID: 7028 RVA: 0x0004F216 File Offset: 0x0004D416
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<uint> ModifierEffectCellIdList
		{
			get
			{
				return this.modifierEffectCellIdList_;
			}
		}

		// Token: 0x1700080D RID: 2061
		// (get) Token: 0x06001B75 RID: 7029 RVA: 0x0004F21E File Offset: 0x0004D41E
		// (set) Token: 0x06001B76 RID: 7030 RVA: 0x0004F226 File Offset: 0x0004D426
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint SelectCellId
		{
			get
			{
				return this.selectCellId_;
			}
			set
			{
				this.selectCellId_ = value;
			}
		}

		// Token: 0x06001B77 RID: 7031 RVA: 0x0004F22F File Offset: 0x0004D42F
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as ChessRogueModifierInfo);
		}

		// Token: 0x06001B78 RID: 7032 RVA: 0x0004F240 File Offset: 0x0004D440
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(ChessRogueModifierInfo other)
		{
			return other != null && (other == this || (this.Confirm == other.Confirm && this.modifierEffectCellIdList_.Equals(other.modifierEffectCellIdList_) && this.SelectCellId == other.SelectCellId && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x06001B79 RID: 7033 RVA: 0x0004F2A0 File Offset: 0x0004D4A0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.Confirm)
			{
				num ^= this.Confirm.GetHashCode();
			}
			num ^= this.modifierEffectCellIdList_.GetHashCode();
			if (this.SelectCellId != 0U)
			{
				num ^= this.SelectCellId.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x06001B7A RID: 7034 RVA: 0x0004F306 File Offset: 0x0004D506
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x06001B7B RID: 7035 RVA: 0x0004F30E File Offset: 0x0004D50E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x06001B7C RID: 7036 RVA: 0x0004F318 File Offset: 0x0004D518
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			this.modifierEffectCellIdList_.WriteTo(ref output, ChessRogueModifierInfo._repeated_modifierEffectCellIdList_codec);
			if (this.Confirm)
			{
				output.WriteRawTag(48);
				output.WriteBool(this.Confirm);
			}
			if (this.SelectCellId != 0U)
			{
				output.WriteRawTag(112);
				output.WriteUInt32(this.SelectCellId);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x06001B7D RID: 7037 RVA: 0x0004F384 File Offset: 0x0004D584
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.Confirm)
			{
				num += 2;
			}
			num += this.modifierEffectCellIdList_.CalculateSize(ChessRogueModifierInfo._repeated_modifierEffectCellIdList_codec);
			if (this.SelectCellId != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.SelectCellId);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x06001B7E RID: 7038 RVA: 0x0004F3E4 File Offset: 0x0004D5E4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(ChessRogueModifierInfo other)
		{
			if (other == null)
			{
				return;
			}
			if (other.Confirm)
			{
				this.Confirm = other.Confirm;
			}
			this.modifierEffectCellIdList_.Add(other.modifierEffectCellIdList_);
			if (other.SelectCellId != 0U)
			{
				this.SelectCellId = other.SelectCellId;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x06001B7F RID: 7039 RVA: 0x0004F445 File Offset: 0x0004D645
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x06001B80 RID: 7040 RVA: 0x0004F450 File Offset: 0x0004D650
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 26U)
				{
					if (num == 24U || num == 26U)
					{
						this.modifierEffectCellIdList_.AddEntriesFrom(ref input, ChessRogueModifierInfo._repeated_modifierEffectCellIdList_codec);
						continue;
					}
				}
				else
				{
					if (num == 48U)
					{
						this.Confirm = input.ReadBool();
						continue;
					}
					if (num == 112U)
					{
						this.SelectCellId = input.ReadUInt32();
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x04000B7A RID: 2938
		private static readonly MessageParser<ChessRogueModifierInfo> _parser = new MessageParser<ChessRogueModifierInfo>(() => new ChessRogueModifierInfo());

		// Token: 0x04000B7B RID: 2939
		private UnknownFieldSet _unknownFields;

		// Token: 0x04000B7C RID: 2940
		public const int ConfirmFieldNumber = 6;

		// Token: 0x04000B7D RID: 2941
		private bool confirm_;

		// Token: 0x04000B7E RID: 2942
		public const int ModifierEffectCellIdListFieldNumber = 3;

		// Token: 0x04000B7F RID: 2943
		private static readonly FieldCodec<uint> _repeated_modifierEffectCellIdList_codec = FieldCodec.ForUInt32(26U);

		// Token: 0x04000B80 RID: 2944
		private readonly RepeatedField<uint> modifierEffectCellIdList_ = new RepeatedField<uint>();

		// Token: 0x04000B81 RID: 2945
		public const int SelectCellIdFieldNumber = 14;

		// Token: 0x04000B82 RID: 2946
		private uint selectCellId_;
	}
}
